import axios from 'axios'


export let baseURL = 'http://autoplatform.tanzk.com/';

if (process.env.NODE_ENV === 'development'){
    baseURL = 'http://127.0.0.1:8000/';
}

// 创建HTTP请求实例对象
const request = axios.create({

  // `baseURL` 将自动加在 `url` 前面，除非 `url` 是一个绝对 URL。
  baseURL: baseURL,

  // 如果请求花费了超过 `timeout` 的时间，请求将被中断
  timeout: 5000,

  // `responseType` 表示服务器响应的数据类型，默认是：json, 可以是 "arraybuffer", "blob", "document", "json", "text", "stream"
  responseType: "json",

})


// http request 拦截器
request.interceptors.request.use(
  config => {
    if (localStorage.token) { //判断token是否存在
      config.headers.Authorization = window.localStorage.getItem("token");
    }
    return config;
  },
  err => {
    return Promise.reject(err);
  }
);

// http response 拦截器
request.interceptors.response.use(

  response => {

    if (response.data.code === 9001 || response.status === 403) {
      window.localStorage.removeItem('token')
      router.replace({path: '/login'})  // 到登录页重新获取token
      console.log("token过期");
    }
    return response;
  },
  error => {
    return Promise.reject(error);
  }
);


// export可以导出多个模块，erport default只可以导出一个默认模块；
export default request;
